# Mappings from configurations to GDB target definitions.  This is
# invoked from the autoconf generated configure script.

# This file sets the following shell variables:
#  gdb_target_obs	target-specific object files to use
#  gdb_sim		simulator library for target
#  gdb_osabi		default OS ABI to use with target
#  build_gdbserver	set to "yes" if gdbserver supports target
#  gdb_have_gcore	set to "true"/"false" if this target can run gcore

# NOTE: Every file added to a gdb_target_obs variable for any target here
#       must also be added to either ALL_TARGET_OBS or ALL_64_TARGET_OBS
#	in Makefile.in!

case $targ in
 *-*-irix* | \
 alpha*-*-osf* | \
 d10v-*-* | \
 hppa*-*-hiux* | \
 i[34567]86-ncr-* | \
 m68*-cisco*-* | \
 m68*-tandem-* | \
 m68*-*-os68k* | \
 mips*-*-pe | \
 rs6000-*-lynxos* | \
 sh*-*-pe | \
 hppa*-*-hpux* | \
 ia64-*-hpux* | \
 null)
    echo "*** Configuration $targ is obsolete." >&2
    echo "*** Support has been REMOVED." >&2
    exit 1
    ;;
esac

# map target info into gdb names.

case "${targ}" in
aarch64*-*-elf)
	# Target: AArch64 embedded system
	gdb_target_obs="aarch64-tdep.o aarch64-newlib-tdep.o aarch64-insn.o"
	;;

aarch64*-*-linux*)
	# Target: AArch64 linux
	gdb_target_obs="aarch64-tdep.o aarch64-linux-tdep.o aarch64-insn.o \
			arm.o arm-tdep.o arm-linux-tdep.o \
			glibc-tdep.o linux-tdep.o solib-svr4.o \
			symfile-mem.o linux-record.o"
	build_gdbserver=yes
	;;

alpha*-*-linux*)
	# Target: Little-endian Alpha running Linux
	gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alpha-linux-tdep.o \
			linux-tdep.o solib-svr4.o"
	;;
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
	# Target: FreeBSD/alpha
	gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
			alphafbsd-tdep.o solib-svr4.o"
	;;
alpha*-*-netbsd* | alpha*-*-knetbsd*-gnu)
	# Target: NetBSD/alpha
	gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
			alphanbsd-tdep.o nbsd-tdep.o solib-svr4.o"
	;;
alpha*-*-openbsd*)
	# Target: OpenBSD/alpha
	gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
			alphanbsd-tdep.o alphaobsd-tdep.o nbsd-tdep.o \
			obsd-tdep.o solib-svr4.o"
	;;
alpha*-*-*)
	# Target: Alpha
	gdb_target_obs="alpha-tdep.o"
	;;

am33_2.0*-*-linux*)
	# Target: Matsushita mn10300 (AM33) running Linux
	gdb_target_obs="mn10300-tdep.o mn10300-linux-tdep.o linux-tdep.o \
			solib-svr4.o"
	;;

arm*-wince-pe | arm*-*-mingw32ce*)
	# Target: ARM based machine running Windows CE (win32)
	gdb_target_obs="arm.o arm-tdep.o arm-wince-tdep.o windows-tdep.o"
	build_gdbserver=yes
	;;
arm*-*-linux*)
	# Target: ARM based machine running GNU/Linux
	gdb_target_obs="arm.o arm-tdep.o arm-linux-tdep.o glibc-tdep.o \
			solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
	build_gdbserver=yes
	;;
arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
	# Target: NetBSD/arm
	gdb_target_obs="arm.o arm-tdep.o armnbsd-tdep.o solib-svr4.o"
	;;
arm*-*-openbsd*)
	# Target: OpenBSD/arm
	gdb_target_obs="arm.o arm-tdep.o armbsd-tdep.o armobsd-tdep.o \
			obsd-tdep.o solib-svr4.o"
	;;
arm*-*-symbianelf*)
	# Target: SymbianOS/arm
	gdb_target_obs="arm.o arm-tdep.o arm-symbian-tdep.o"
	;;
arm*-*-*)
	# Target: ARM embedded system
	gdb_target_obs="arm.o arm-tdep.o"
	gdb_sim=../sim/arm/libsim.a
	;;

avr-*-*)
	# Target: AVR
	gdb_target_obs="avr-tdep.o"
	gdb_sim=../sim/avr/libsim.a
	;;

bfin-*-*linux*)
	# Target: Blackfin Linux
	gdb_target_obs="bfin-tdep.o bfin-linux-tdep.o linux-tdep.o"
	gdb_sim=../sim/bfin/libsim.a
	build_gdbserver=yes
	;;
bfin-*-*)
	# Target: Blackfin processor
	gdb_target_obs="bfin-tdep.o"
	gdb_sim=../sim/bfin/libsim.a
	;;

cris*)
	# Target: CRIS
	gdb_target_obs="cris-tdep.o cris-linux-tdep.o linux-tdep.o solib-svr4.o"
	;;

frv-*-*)
	# Target: Fujitsu FRV processor
	gdb_target_obs="frv-tdep.o frv-linux-tdep.o linux-tdep.o solib-frv.o"
	gdb_sim=../sim/frv/libsim.a
	;;

moxie-*-elf | moxie-*-moxiebox | moxie-*-rtems*)
	gdb_target_obs="moxie-tdep.o"
	gdb_sim=../sim/moxie/libsim.a
	;;

h8300-*-*)
	# Target: H8300 processor
	gdb_target_obs="h8300-tdep.o"
	gdb_sim=../sim/h8300/libsim.a
	;;

hppa*-*-linux*)
	# Target: HP PA-RISC running Linux
	gdb_target_obs="hppa-tdep.o hppa-linux-tdep.o glibc-tdep.o \
			linux-tdep.o solib-svr4.o symfile-mem.o"
	;;
hppa*-*-netbsd*)
	# Target: NetBSD/hppa
	gdb_target_obs="hppa-tdep.o hppabsd-tdep.o hppanbsd-tdep.o solib-svr4.o"
	;;
hppa*-*-openbsd*)
	# Target: OpenBSD/hppa
	gdb_target_obs="hppa-tdep.o hppabsd-tdep.o hppaobsd-tdep.o solib-svr4.o"
	;;
hppa*-*-*)
	# Target: HP PA-RISC
	gdb_target_obs="hppa-tdep.o"
	;;

i[34567]86-*-darwin*)
	# Target: Darwin/i386
	gdb_target_obs="i386-tdep.o i387-tdep.o \
			i386-darwin-tdep.o solib-darwin.o"
	if test "x$enable_64_bit_bfd" = "xyes"; then
	    # Target: GNU/Linux x86-64
	    gdb_target_obs="amd64-tdep.o amd64-darwin-tdep.o ${gdb_target_obs}"
	fi
	;;
i[34567]86-*-dicos*)
	# Target: DICOS/i386
	gdb_target_obs="i386-tdep.o i387-tdep.o dicos-tdep.o i386-dicos-tdep.o"
	;;
i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
	# Target: FreeBSD/i386
	gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386fbsd-tdep.o \
			bsd-uthread.o fbsd-tdep.o solib-svr4.o"
	;;
i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
	# Target: NetBSD/i386
	gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386nbsd-tdep.o \
			nbsd-tdep.o solib-svr4.o"
	;;
i[34567]86-*-openbsd*)
	# Target: OpenBSD/i386
	gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386obsd-tdep.o \
			obsd-tdep.o bsd-uthread.o solib-svr4.o"
	;;
i[34567]86-*-nto*)
	# Target: Intel 386 running qnx6.
	gdb_target_obs="i386-tdep.o i387-tdep.o solib-svr4.o \
			i386-nto-tdep.o nto-tdep.o"
	build_gdbserver=yes
	;;
i[34567]86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
	# Target: Solaris x86_64
	gdb_target_obs="i386-tdep.o i387-tdep.o amd64-tdep.o amd64-sol2-tdep.o \
			i386-sol2-tdep.o sol2-tdep.o solib-svr4.o"
	;;
i[34567]86-*-solaris*)
	# Target: Solaris x86
	gdb_target_obs="i386-tdep.o i387-tdep.o i386-sol2-tdep.o sol2-tdep.o \
			solib-svr4.o"
	;;
i[34567]86-*-linux*)
	# Target: Intel 386 running GNU/Linux
	gdb_target_obs="i386-tdep.o i386-linux-tdep.o glibc-tdep.o i387-tdep.o \
			solib-svr4.o symfile-mem.o \
			linux-tdep.o linux-record.o"
	if test "x$enable_64_bit_bfd" = "xyes"; then
	    # Target: GNU/Linux x86-64
	    gdb_target_obs="amd64-tdep.o amd64-linux-tdep.o ${gdb_target_obs}"
	fi
	build_gdbserver=yes
	;;
i[34567]86-*-gnu*)
	# Target: Intel 386 running the GNU Hurd
	gdb_target_obs="i386-tdep.o i387-tdep.o i386gnu-tdep.o solib-svr4.o"
	;;
i[34567]86-*-cygwin*)
	# Target: Intel 386 running win32
	gdb_target_obs="i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
			windows-tdep.o"
	build_gdbserver=yes
	;;
i[34567]86-*-mingw32*)
	# Target: Intel 386 running win32
	gdb_target_obs="i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
			windows-tdep.o"
	build_gdbserver=yes
	;;
i[34567]86-*-*)
	# Target: i386
	gdb_target_obs="i386-tdep.o i387-tdep.o"
	;;

ia64-*-linux*)
	# Target: Intel IA-64 running GNU/Linux
	gdb_target_obs="ia64-tdep.o ia64-linux-tdep.o linux-tdep.o \
			solib-svr4.o symfile-mem.o"
	build_gdbserver=yes
	;;
ia64-*-*vms*)
	# Target: Intel IA-64 running OpenVMS
	gdb_target_obs="ia64-tdep.o ia64-vms-tdep.o"
	;;
ia64*-*-*)
	# Target: Intel IA-64
	gdb_target_obs="ia64-tdep.o"
	;;

iq2000-*-*)
	gdb_target_obs="iq2000-tdep.o"
	gdb_sim=../sim/iq2000/libsim.a
	;;

lm32-*-*)		
	gdb_target_obs="lm32-tdep.o" 
	gdb_sim=../sim/lm32/libsim.a
	;;

m32c-*-*)
	# Target: Renesas M32C family
	gdb_target_obs="m32c-tdep.o"
	# There may also be a SID / CGEN simulator for this,
	# but we do have DJ Delorie's mini-sim.
	gdb_sim=../sim/m32c/libsim.a
	;;

m32r*-*-linux*)
	# Target: Renesas M32R running GNU/Linux
	gdb_target_obs="m32r-tdep.o m32r-linux-tdep.o remote-m32r-sdi.o \
			glibc-tdep.o solib-svr4.o symfile-mem.o \
			linux-tdep.o"
	gdb_sim=../sim/m32r/libsim.a
	build_gdbserver=yes
	;;
m32r*-*-*)
	# Target: Renesas m32r processor
	gdb_target_obs="m32r-tdep.o remote-m32r-sdi.o"
	gdb_sim=../sim/m32r/libsim.a
	;;

m68hc11*-*-*|m6811*-*-*)
	# Target: Motorola 68HC11 processor
	gdb_target_obs="m68hc11-tdep.o"
	gdb_sim=../sim/m68hc11/libsim.a
	;;

m68*-*-aout* | m68*-*-coff* | m68*-*-elf* | m68*-*-rtems* | m68*-*-uclinux* | \
fido-*-elf*)
	# Target: Motorola m68k embedded
	gdb_target_obs="m68k-tdep.o"
	;;
m68*-*-linux*)
	# Target: Motorola m68k with a.out and ELF
	gdb_target_obs="m68k-tdep.o m68klinux-tdep.o solib-svr4.o \
			linux-tdep.o glibc-tdep.o symfile-mem.o"
	build_gdbserver=yes
	;;
m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
	# Target: NetBSD/m68k
	gdb_target_obs="m68k-tdep.o m68kbsd-tdep.o solib-svr4.o"
	;;
m68*-*-openbsd*)
	# Target: OpenBSD/m68k
	gdb_target_obs="m68k-tdep.o m68kbsd-tdep.o solib-svr4.o"
	;;

m88*-*-openbsd*)
	# Target: OpenBSD/m88k
	gdb_target_obs="m88k-tdep.o"
	;;

mep-*-*)
	# Target: Toshiba Media Processor (MEP)
	gdb_target_obs="mep-tdep.o"
	# No sim needed. Target uses SID.
	;;

microblaze*-linux-*|microblaze*-*-linux*)
	# Target: Xilinx MicroBlaze running Linux
	gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o solib-svr4.o \
			symfile-mem.o linux-tdep.o"
	gdb_sim=../sim/microblaze/libsim.a
	;;
microblaze*-*-*)
	# Target: Xilinx MicroBlaze running standalone
	gdb_target_obs="microblaze-tdep.o"
	gdb_sim=../sim/microblaze/libsim.a
	;;

mips*-*-linux*)
	# Target: Linux/MIPS
	gdb_target_obs="mips-tdep.o mips-linux-tdep.o glibc-tdep.o \
			solib-svr4.o symfile-mem.o linux-tdep.o"
	gdb_sim=../sim/mips/libsim.a
	build_gdbserver=yes
	;;
mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
	# Target: MIPS running NetBSD
	gdb_target_obs="mips-tdep.o mipsnbsd-tdep.o solib-svr4.o nbsd-tdep.o"
	gdb_sim=../sim/mips/libsim.a
	;;
mips64*-*-openbsd*)
	# Target: OpenBSD/mips64
	gdb_target_obs="mips-tdep.o mips64obsd-tdep.o obsd-tdep.o solib-svr4.o"
	;;
mips*-sde*-elf*)
	# Target: MIPS SDE
	gdb_target_obs="mips-tdep.o mips-sde-tdep.o remote-mips.o"
	gdb_sim=../sim/mips/libsim.a
	;;
mips*-*-elf)
	# Target: MIPS ELF
	gdb_target_obs="mips-tdep.o remote-mips.o"
	gdb_sim=../sim/mips/libsim.a
	;;
mips*-*-*)
	# Target: MIPS
	gdb_target_obs="mips-tdep.o"
	gdb_sim=../sim/mips/libsim.a
	;;

mn10300-*-*)
	# Target: Matsushita mn10300
	gdb_target_obs="mn10300-tdep.o"
	gdb_sim=../sim/mn10300/libsim.a
	;;

msp430*-*-elf)
	gdb_target_obs="msp430-tdep.o"
	gdb_sim=../sim/msp430/libsim.a
	;;

mt-*-*)
	# Target: Morpho Technologies ms1 processor
	gdb_target_obs="mt-tdep.o"
	;;

nios2*-*-linux*)
	# Target: Altera Nios II running Linux
	gdb_target_obs="nios2-tdep.o nios2-linux-tdep.o solib-svr4.o \
			symfile-mem.o glibc-tdep.o linux-tdep.o"
	;;

nios2*-*-*)
	# Target: Altera Nios II bare-metal
	gdb_target_obs="nios2-tdep.o"
	;;

powerpc*-*-freebsd*)
	# Target: FreeBSD/powerpc
	gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc64-tdep.o \
		        ppcfbsd-tdep.o fbsd-tdep.o solib-svr4.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	;;

powerpc-*-netbsd* | powerpc-*-knetbsd*-gnu)
	# Target: NetBSD/powerpc
	gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppcnbsd-tdep.o \
			solib-svr4.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	gdb_sim=../sim/ppc/libsim.a
	;;
powerpc-*-openbsd*)
	# Target: OpenBSD/powerpc
	gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppcobsd-tdep.o \
			solib-svr4.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	;;
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
	# Target: PowerPC running AIX
	gdb_target_obs="rs6000-tdep.o rs6000-aix-tdep.o xcoffread.o \
			ppc-sysv-tdep.o solib-aix.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	;;
powerpc*-*-linux*)
	# Target: PowerPC running Linux
	gdb_target_obs="rs6000-tdep.o ppc-linux-tdep.o ppc-sysv-tdep.o \
			ppc64-tdep.o solib-svr4.o solib-spu.o \
			spu-multiarch.o \
			glibc-tdep.o symfile-mem.o linux-tdep.o \
			ravenscar-thread.o ppc-ravenscar-thread.o \
			linux-record.o "
	gdb_sim=../sim/ppc/libsim.a
	build_gdbserver=yes
	;;
powerpc-*-lynx*178)
	# Target: PowerPC running Lynx178.
	gdb_target_obs="rs6000-tdep.o rs6000-lynx178-tdep.o \
			xcoffread.o ppc-sysv-tdep.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	;;
powerpc*-*-*)
	# Target: PowerPC running eabi
	gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o solib-svr4.o \
			ravenscar-thread.o ppc-ravenscar-thread.o"
	if test -f ../sim/ppc/Makefile; then
	  gdb_sim=../sim/ppc/libsim.a
	fi
	;;

s390*-*-linux*)
	# Target: S390 running Linux
	gdb_target_obs="s390-linux-tdep.o solib-svr4.o linux-tdep.o"
	build_gdbserver=yes
	;;

rl78-*-elf)
	# Target: Renesas rl78
	gdb_target_obs="rl78-tdep.o"
	gdb_sim=../sim/rl78/libsim.a
	;;

rx-*-elf)
	# Target: Renesas RX
	gdb_target_obs="rx-tdep.o"
	gdb_sim=../sim/rx/libsim.a
	;;

score-*-*)
	# Target: S+core embedded system
	gdb_target_obs="score-tdep.o"
	if test -f ../sim/score/Makefile; then
	  gdb_sim=../sim/score/libsim.a
	fi
	build_gdbserver=yes
	;;

sh*-*-linux*)
	# Target: GNU/Linux Super-H
	gdb_target_obs="sh-tdep.o sh64-tdep.o sh-linux-tdep.o \
			solib-svr4.o symfile-mem.o \
			glibc-tdep.o linux-tdep.o"
	gdb_sim=../sim/sh/libsim.a
	build_gdbserver=yes
	;;
sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu)
	# Target: NetBSD/sh
	gdb_target_obs="sh-tdep.o shnbsd-tdep.o solib-svr4.o"
	gdb_sim=../sim/sh/libsim.a
	;;
sh*-*-openbsd*)
	# Target: OpenBSD/sh
	gdb_target_obs="sh-tdep.o sh64-tdep.o shnbsd-tdep.o solib-svr4.o"
	;;
sh64-*-elf*)
	# Target: Renesas/Super-H 64 bit with simulator
	gdb_target_obs="sh-tdep.o sh64-tdep.o"
	gdb_sim=../sim/sh64/libsim.a
	;;
sh*)
	# Target: Embedded Renesas Super-H processor
	gdb_target_obs="sh-tdep.o sh64-tdep.o"
	gdb_sim=../sim/sh/libsim.a
	;;

sparc-*-linux*)
	# Target: GNU/Linux SPARC
	gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
			sparc-linux-tdep.o solib-svr4.o symfile-mem.o \
			linux-tdep.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	if test "x$enable_64_bit_bfd" = "xyes"; then
	    # Target: GNU/Linux UltraSPARC
	    gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o \
			    sparc64-linux-tdep.o ${gdb_target_obs}"
	fi
	build_gdbserver=yes
	;;
sparc64-*-linux*)
	# Target: GNU/Linux UltraSPARC
	gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sol2-tdep.o \
			sparc64-linux-tdep.o sparc-tdep.o sparc-sol2-tdep.o \
			sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	build_gdbserver=yes
	;;
sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
	# Target: FreeBSD/sparc64
	gdb_target_obs="sparc-tdep.o sparc64-tdep.o sparc64fbsd-tdep.o \
			fbsd-tdep.o solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
	# Target: NetBSD/sparc
	gdb_target_obs="sparc-tdep.o sparcnbsd-tdep.o nbsd-tdep.o \
			solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc64-*-netbsd* | sparc64-*-knetbsd*-gnu)
	# Target: NetBSD/sparc64
	gdb_target_obs="sparc64-tdep.o sparc64nbsd-tdep.o sparc-tdep.o \
			sparcnbsd-tdep.o nbsd-tdep.o solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc-*-openbsd*)
	# Target: OpenBSD/sparc
	gdb_target_obs="sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o \
			nbsd-tdep.o obsd-tdep.o bsd-uthread.o solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc64-*-openbsd*)
	# Target: OpenBSD/sparc64
	gdb_target_obs="sparc64-tdep.o sparc64nbsd-tdep.o sparc64obsd-tdep.o \
			sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o \
			nbsd-tdep.o obsd-tdep.o bsd-uthread.o solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
	# Target: Solaris SPARC
	gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
			solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
	# Target: Solaris UltraSPARC
	gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sparc-tdep.o \
			sparc-sol2-tdep.o sol2-tdep.o solib-svr4.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;
sparc-*-*)
	# Target: SPARC
	gdb_target_obs="sparc-tdep.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	gdb_sim=../sim/erc32/libsim.a
	;;
sparc64-*-*)
	# Target: UltraSPARC
	gdb_target_obs="sparc-tdep.o sparc64-tdep.o \
			ravenscar-thread.o sparc-ravenscar-thread.o"
	;;

spu*-*-*)
	# Target: Cell BE SPU
	gdb_target_obs="spu-tdep.o"
	build_gdbserver=yes
	;;

tic6x-*-*linux)
	# Target: GNU/Linux TI C6x
	gdb_target_obs="tic6x-tdep.o tic6x-linux-tdep.o solib-dsbt.o \
			glibc-tdep.o linux-tdep.o"
	;;

tic6x-*-*)
	# Target: TI C6X 
	gdb_target_obs="tic6x-tdep.o"
	;;

tilegx-*-linux*)
	# Target: TILE-Gx
	gdb_target_obs="tilegx-tdep.o tilegx-linux-tdep.o solib-svr4.o \
			symfile-mem.o glibc-tdep.o linux-tdep.o"
	build_gdbserver=yes
	;;

xstormy16-*-*)
	# Target: Sanyo Xstormy16a processor
	gdb_target_obs="xstormy16-tdep.o"
	# No simulator libraries are needed -- target uses SID.
	;;

ft32-*-elf)
	gdb_target_obs="ft32-tdep.o"
	gdb_sim=../sim/ft32/libsim.a
	;;

v850*-*-elf | v850*-*-rtems*)
	# Target: NEC V850 processor
	gdb_target_obs="v850-tdep.o"
	gdb_sim=../sim/v850/libsim.a
	;;

vax-*-netbsd* | vax-*-knetbsd*-gnu)
	# Target: NetBSD/vax
	gdb_target_obs="vax-tdep.o vaxnbsd-tdep.o solib-svr4.o"
	;;
vax-*-openbsd*)
	# Target: OpenBSD/vax
	gdb_target_obs="vax-tdep.o vaxobsd-tdep.o"
	;;
vax-*-*)
	# Target: VAX
	gdb_target_obs="vax-tdep.o"
	;;

x86_64-*-darwin*)
	# Target: Darwin/x86-64
	gdb_target_obs="amd64-tdep.o i386-tdep.o i387-tdep.o \
			i386-darwin-tdep.o amd64-darwin-tdep.o \
                        solib-darwin.o"
	;;

x86_64-*-dicos*)
	# Target: DICOS/x86-64
	gdb_target_obs="amd64-tdep.o i386-tdep.o i387-tdep.o \
			dicos-tdep.o i386-dicos-tdep.o amd64-dicos-tdep.o"
	;;
x86_64-*-linux*)
	# Target: GNU/Linux x86-64
	gdb_target_obs="amd64-tdep.o amd64-linux-tdep.o i386-tdep.o \
			i387-tdep.o i386-linux-tdep.o glibc-tdep.o \
			solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
	build_gdbserver=yes
	;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
	# Target: FreeBSD/amd64
	gdb_target_obs="amd64-tdep.o amd64fbsd-tdep.o i386-tdep.o \
			i387-tdep.o i386bsd-tdep.o i386fbsd-tdep.o \
			bsd-uthread.o fbsd-tdep.o solib-svr4.o"
	;;
x86_64-*-mingw* | x86_64-*-cygwin*)
        # Target: MingW/amd64
	gdb_target_obs="amd64-tdep.o amd64-windows-tdep.o \
                        i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
                        windows-tdep.o"
	build_gdbserver=yes
        ;;
x86_64-w64-minwin64*)
        # Target: MingW/amd64
	gdb_target_obs="amd64-tdep.o amd64-windows-tdep.o \
                        i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
                        windows-tdep.o"
	build_gdbserver=yes
        ;;
x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
	# Target: NetBSD/amd64
	gdb_target_obs="amd64-tdep.o amd64nbsd-tdep.o i386-tdep.o i387-tdep.o \
			nbsd-tdep.o solib-svr4.o"
	;;
x86_64-*-openbsd*)
	# Target: OpenBSD/amd64
	gdb_target_obs="amd64-tdep.o amd64obsd-tdep.o i386-tdep.o \
			i387-tdep.o i386bsd-tdep.o i386obsd-tdep.o \
			obsd-tdep.o bsd-uthread.o solib-svr4.o"
	;;
xtensa*-*-linux*)	gdb_target=linux
	# Target: GNU/Linux Xtensa
	gdb_target_obs="xtensa-tdep.o xtensa-config.o xtensa-linux-tdep.o \
			solib-svr4.o symfile-mem.o linux-tdep.o"
	build_gdbserver=yes
	;;
xtensa*)
	# Target: Tensilica Xtensa processors
	gdb_target_obs="xtensa-tdep.o xtensa-config.o solib-svr4.o"
	;;

esac

# map target onto default OS ABI

case "${targ}" in
*-*-freebsd* | *-*-kfreebsd*-gnu)
		gdb_osabi=GDB_OSABI_FREEBSD_ELF ;;
*-*-linux* | *-*-uclinux*)
		gdb_osabi=GDB_OSABI_LINUX ;;
*-*-nto*)	gdb_osabi=GDB_OSABI_QNXNTO ;;
m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
*-*-openbsd*)	gdb_osabi=GDB_OSABI_OPENBSD_ELF ;;
*-*-solaris*)	gdb_osabi=GDB_OSABI_SOLARIS ;;
*-*-*-gnu*)	;; # prevent non-GNU kernels to match the Hurd rule below
*-*-gnu*)	gdb_osabi=GDB_OSABI_HURD ;;
*-*-mingw32ce*)	gdb_osabi=GDB_OSABI_WINCE ;;
*-*-mingw* | *-*-cygwin*)
		gdb_osabi=GDB_OSABI_CYGWIN ;;
x86_64-w64-minwin64*)
		gdb_osabi=GDB_OSABI_CYGWIN ;;
*-*-dicos*)	gdb_osabi=GDB_OSABI_DICOS ;;
*-*-symbianelf*)
		gdb_osabi=GDB_OSABI_SYMBIAN ;;
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
                gdb_osabi=GDB_OSABI_AIX ;;
esac

# Check whether this target supports gcore.
# Such target has to call set_gdbarch_find_memory_regions.
gdb_have_gcore=false
for t in x ${gdb_target_obs}; do
  if test "$t" = linux-tdep.o; then
    gdb_have_gcore=true
  fi
done
